package com.thinkTank.oa.dao;

import java.util.List;

import com.thinkTank.oa.base.BaseMapper;
import com.thinkTank.oa.entity.Role;
import com.thinkTank.oa.entity.RoleOfPremiss;
import com.thinkTank.oa.entity.User;

public interface UserMapper  extends BaseMapper<User>{

	/**
	 * 根据用户名查找用户
	 * @param userName 登录账号
	 * @return 当前查到的用户
	 * @author dq
	 * @date 2018-08-14
	 */
	public User getUserByUsername(String userName);
	/**
	 * 根据用户名获取用户所有的角色
	 * @param userName 登录账号
	 * @return 用户角色列表
	 * @author dq
	 * @date 2018-08-14
	 */
	public List<Role> getRolesByUsername(String userName);
	
	/**
	 * 获取所有的角色和角色关联的资源
	 * @return 角色和资源关联数据
	 * @author dq
	 * @date 2018-08-14
	 */
	public List<RoleOfPremiss> getAllRolePermissoin();
	
	/***
	 * 根据用户Id查询用户相关信息
	 * @author dq
	 * @date 2018-08-14
	 * @param pid 用户Id
	 * @return
	 */
	public User findUserById(String pid);
	
	/**
	 * 根据pid集合查找user
	 * @author pdz
	 * @date 2018年11月7日
	 * @param pidList
	 * @return
	 */
	public List<User> queryInPidList(List<String> pidList);
	

	/**
	 * 根据fullname查找用户
	 * xyx
	 */
	public User getUserByFullname(String fullName);
	
	/**
	 * 根据fullname查找，主要用于导入
	 * @author pdz
	 * @date 2018年11月16日
	 * @param fullnameList
	 * @return
	 */
	public List<User> queryInFullname(List<String> fullnameList);
}
